using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;

namespace FiveChess
{
    public class StatusChangedEventArgs : EventArgs
    {
        public string message;
        public StatusChangedEventArgs(string message)
        {
            this.message = message;
        }
    }


    public class PlayerEventArgs : EventArgs
    {
        public Point  position;
        public PlayerEventArgs(Point position)
        {
            this.position = position;
        }
    }

    public delegate void GameStatusHandle(object sender, StatusChangedEventArgs fe);

    public delegate void PlayerEventHandle(object sender, PlayerEventArgs fe);

    interface IGameInterface
    {
        bool AddChessman(ChessmanType pType, Point pPoint);
        void Undo();
        event GameStatusHandle StatusChanged;
    }

    interface IDrawScreen
    {
        void Draw(Graphics drawingSurface);
    }

    interface IPlayer
    {
        void GetNextChessmanPosition(Point pPoint);
        event PlayerEventHandle playerEvent;
    }

}
